10302. Суммирование полиномов

 

Для заданного x вычислить сумму 1 + 8 + 27 + ... + x3.

 

Вход. Каждая строка содержит число x (1 £ x £ 50000).

 

Выход. Для каждого x вывести в отдельной строке значение указанной выше суммы.

 

Пример входа

Пример выхода

1

2

3

1

9

36

 

 

РЕШЕНИЕ

математика

 

Анализ алгоритма

Значение суммы вычислим по формуле:

1 + 8 + 27 + ... + x3 = (1 + 2 + …. + x)2 =

Пример

Для x = 3 имеем: 1 + 8 + 27 = (1 + 2 + 3)2 = 62 = 36, что верно.

 

Реализация алгоритма

Поскольку x £ 50000, то вычисления следует проводить в 64-битных целых числах. Объявим переменные:

 

long long n, res;

 

Основной цикл программы состоит из чтения числа x, вычисления суммы по выше приведенной формуле и печати результата.

 

while(scanf("%lld",&n) == 1)

{

  res = n * (n + 1) / 2;

  res = res * res;

  printf("%lld\n",res);

}